#include <Arduino.h>
// https://shop64022682.taobao.com/ DIY模块地址
const int ledPIN = 2; // LED物理引脚定义
const String devName = "ESP32 UART"; // 自定义设备名称

void setup() {
  pinMode(ledPIN, OUTPUT); // 将LED引脚设为输出模式
  Serial.begin(9600); // 设置串口通信波特率为9600，启动串口
  Serial.print(" Device ready: "); // 向串口输出字符串（不带换行）
  Serial.print(devName); // 向串口输出字符串变量（不带换行）
  Serial.println(" !!! "); // 向串口输出字符串（带换行）
  Serial.println(); // 向串口输出换行
}
 // 主循环，循环读取串口接收到的数据
void loop() {
  // 读取串口接收缓冲区数据，缓冲区为空返回-1，
  // 有数据返回数据的ASCII码，
  // 例如字符1的ASCII码为十进制49，十六进制0x31
  int reData = Serial.read(); 
  if(reData > 0){ // 判断是否读取到数据
    // 如果读取到数据
    Serial.println((char)reData); // 向串口输出字符变量（带换行，(char)将int变量强转为字符型变量）
    if((char)reData == '1'){ // 如果用户向串口输入‘1’
      digitalWrite(ledPIN, 0); // 将LED引脚置为低电平，熄灭LED
    } else if((char)reData == '2') { // 如果用户向串口输入‘2’
      digitalWrite(ledPIN, 1); // 将LED引脚置为高电平，点亮LED
    }
  }
}

